package com.fileDemo;

import java.io.File;
import java.io.IOException;

/**
 * @Author milian
 * @Date 2021/7/27 0027 15:10
 */
public class demo1 {
    public static void main(String[] args) throws IOException {
        //creatFile();
        //CreatDirAndCreatFile();
        //deleteFile();
        //isAndGet();
    }

    private static void isAndGet() {
        /**
         * File类判断和获取功能
         * 判断功能：
         * isDirectory() 判断路径名表示的File是否为目录
         * isFile()  判断路径名表示的File是否为文件
         * exists()  判断路径名表示File是否存在
         * 获取功能：
         * getAbsolutePath() 返回路径名的绝对路径名字字符串
         * getPath()  将抽象路径名转换为路径名字符串
         * getName()  返回此抽象路径名表示的文件或目录的名称
         * listFiles()  返回此抽象路径名表示的目录中的文件和目录的File对象数组
         * */
        File file = new File("H:\\test");
        System.out.println(file.isDirectory());
        System.out.println(file.isFile());
        System.out.println(file.exists());
        System.out.println(file.getAbsoluteFile());
        System.out.println(file.getPath());
        System.out.println(file.getName());
        for (File file1 :file.listFiles()
             ) {
            System.out.println(file1.getName());
        }
    }

    private static void deleteFile() {
        /**
         * File类的删除功能
         * delete()
         * delete只能删除空文件夹或者文件
         * 如果需要删除多级文件夹需要先删除文件夹里面的内容，再删除根文件夹
         * */
        File file = new File("H:\\test\\test.md");
        boolean delete = file.delete();
        System.out.println(delete);
    }

    private static void CreatDirAndCreatFile() throws IOException {
        /**
         * File类创建功能
         * createNewFile()
         * mkdir()
         * mkdirs()
         * */
        File file = new File("H:\\test\\test.md");
        boolean newFile = file.createNewFile();
        System.out.println(newFile);
        File file1 = new File("H:\\test\\abd");
        boolean mkdir = file1.mkdir();
        System.out.println(mkdir);
        File file2 = new File("H:\\test\\abc");
        boolean mkdirs = file2.mkdirs();
        System.out.println(mkdirs);
    }

    private static void creatFile() {
        /**
         * 创建file实例
        * File(String pathname)
         * File(String parent,String child)
         * File(String parent,String child)
        * */
        File file = new File("H:\\test");
        System.out.println(file);
        File file1 = new File(file, "test.txt");
        System.out.println(file1);
    }
}
